On Solving Floating Point SSSP Using an Integer Priority Queue
نویسنده
چکیده
We address the single source shortest path planning problem (SSSP) in the case of floating point edge weights. We show how any integer based Dijkstra solution that relies on a monotone integer priority queue to create a full ordering over path lengths in order to solve integer SSSP can be used as an oracle to solve floating point SSSP with positive edge weights (floating point P-SSSP). Floating point P-SSSP is of particular interest to the robotics community. This immediately yields a handful of faster runtimes for floating point P-SSSP; for example, O(m+ n log log C δ ), where C is the largest weight and δ is the minimum edge weight in the graph. It also ensures that many future advances for integer SSSP will be transferable to floating point P-SSSP. Our work relies on a result known to [Dinic, 1978] and [Tsitsiklis, 1995]; that, under the right conditions, SSSP can be solved using a partial ordering of nodes, despite the fact that full orderings are typically used in practice. Thus, priority queues that do not extract keys in a monotonically nondecreasing order can be used to solve SSSP under a special set of conditions that always hold for floating point P-SSSP. In particular, any node that has a shortest-path-length (key value) within δ of the queue’s minimum key can be extracted (instead of the node with the minimum key) from the priority queue and Dijkstra’s algorithm will still run correctly. Our contribution is to show how any monotonic integer priority queue can be transformed into a suitable δ-nonmonotonic floating point priority queue in order to produce the necessary partial ordering for floating point values. Monotonic integer keys for floating point values are obtained by dividing the floating point key values by δ (as was done by [Dinic, 1978]) and then converting the result to an intege. The loss of precision this division causes is the reason the resulting floating point queue is δ-nonmonotonic instead of monotonic, but does not break the correctness of Dijkstra’s algorithm. We also prove that the floating point version of non-negative SSSP (which allows δ = 0 in addition to δ > 0) cannot be solved without creating a full ordering of nodes (and thus requires a fully monotonic priority heap); and so our method cannot be extended to work on non-negative floating point SSSP, in general.
منابع مشابه
Priority Queues and Dijkstra ’ s Algorithm ∗
We study the impact of using different priority queues in the performance of Dijkstra’s SSSP algorithm. We consider only general priority queues that can handle any type of keys (integer, floating point, etc.); the only exception is that we use as a benchmark the DIMACS Challenge SSSP code [1] which can handle only integer values for distances. Our experiments were focussed on the following: 1....
متن کاملPriority-flood: An optimal depression-filling and watershed-labeling algorithm for digital elevation models
10 Depressions (or pits) are low areas within a digital elevation model that are surrounded by higher terrain, with no outlet to lower areas. Filling them so they are level, as fluid would fill them if the terrain were impermeable, is often necessary in preprocessing DEMs. The depression-filling algorithm presented here— called Priority-Flood—unifies and improves on the work of a number of prev...
متن کاملA Finite Capacity Priority Queue with Discouragement
In this paper we report on a study of a two level preemptive priority queue with balking and reneging for lower priority level. The inter-arrival and the service times for both levels follow exponential distribution. We use a finite difference equation approach for solving the balance equations of the governing queuing model whose states are described by functions of one independent variable. H...
متن کاملEfficient Algorithms for the All Pairs Shortest Path Problem with Limited Edge Costs
In this paper we deal with a directed graph G = (V,E) with non-negative integer edge costs where the edge costs are bounded by c and |V | = n and m = |E|. We show the all pairs shortest path (APSP) problem can be solved in O(mn+ n log(c/n))) time with the data structure of cascading bucket system. The idea for speed-up is to share a single priority queue among n single source shortest path (SSS...
متن کاملOptimal Signal Control in Urban Road Networks with High Priority Congested Centers
Keeping the density of traffic flow and air pollution in an acceptable level and developing a good capacity for transit in the high priority areas of the city, is really a big deal in large and crowded cities. To address this problem, a new method of intersection signal optimization is presented in this paper. Based on network fundamental diagrams, an Internal–External Traffic Metering Strategy...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید
ثبت ناماگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید
ورودعنوان ژورنال:
- CoRR
دوره abs/1606.00726 شماره
صفحات -
تاریخ انتشار 2016